home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1984-04-24 | 20.8 KB | 1,055 lines |
- 10 REM Converted to Heath Mbasic by: Haywood N. Nichols, Jr.*
- 20 REM *MicroNet 70020,164|
- 30 WIDTH 80
- 40 PRINT CHR$(27);CHR$(69)
- 50 DIM P$(41),S(41),R(41),V(41),J(41),M(41),K(21),L(41),C(41),B(41),O(41)
- 60 PRINT "HOW MANY PLAYERS";
- 70 PRINT "(TYPE '0' FOR INSTRUCTIONS)";
- 80 INPUT N
- 90 PRINT CHR$(27);CHR$(69)
- 100 IF N>0 THEN 130
- 110 GOSUB 8640
- 120 GOTO 60
- 130 IF N<11 THEN 160
- 140 PRINT" NO MORE THAN 10 CAN PLAY"
- 150 GOTO 60
- 160 FOR Q5 = 1 TO N
- 170 PRINT "NAME";
- 180 REM THIS PART STARTED FROM 151-2
- 190 REM A(B)=0 FOR HUMAN, 1 FOR COMPUTER
- 200 GOTO 260
- 210 LET N$(Q5)="COMPUTER"
- 220 A(Q5)=1
- 230 W7=W7+1
- 240 REM W7 IS # OF COMPUTER PLAYERS
- 250 GOTO 420
- 260 INPUT N$(Q5)
- 270 IF N$(Q5)="COMPUTER" THEN 210
- 280 IF N$(Q5)="YOU" THEN 210
- 290 IF N$(Q5)<>"WHAT" THEN 310
- 300 GOTO 390
- 310 Z7=1
- 320 FOR O1=1 TO Q5-1
- 330 IF M$(O1)<>N$(Q5) THEN 360
- 340 PRINT "NAME IN USE, INPUT ANOTHER"
- 350 GOTO 170
- 360 NEXT O1
- 370 M$(Q5)=N$(Q5)
- 380 GOTO 420
- 390 PRINT "TYPE PLAYERS NAME (ONE ONLY AT A TIME)"
- 400 PRINT "'YOU' IF THE COMPUTER IS PLAYING."
- 410 GOTO 170
- 420 T(Q5)=1500
- 430 NEXT Q5
- 440 IF Z7=1 THEN 470
- 450 A7=1
- 460 A8=1
- 470 FOR B4= 1 TO 40
- 480 REM READS DATA, P$=NAME,S IS TYPE,R IS RENT, AND C IS COST
- 490 READ P$(B4),S(B4)
- 500 REM B3= B= PLAYER NUMBER
- 510 IF S(B4)>8 THEN 530
- 520 GOTO 550
- 530 READ L(B4),C(B4)
- 540 R(B4)=L(B4)
- 550 NEXT B4
- 560 I0=1
- 570 J0=200
- 580 LET I=I+1
- 590 PRINT
- 600 PRINT "TURN";I
- 610 PRINT
- 620 GOSUB 6970
- 630 IF I0=0 THEN 660
- 640 GOTO 2840
- 650 I0=0
- 660 FOR B3=1 TO N
- 670 B=B3
- 680 IF A(B)=1 THEN 720
- 690 O$="YOU"
- 700 I$="YOUR"
- 710 GOTO 750
- 720 O$="I"
- 730 I$="MY"
- 740 REM THIS SETS O AND I$ FOR COMPUTER OR HUMAN
- 750 R5=0
- 760 U=0
- 770 IF Q(B)=1 THEN 3780
- 780 IF A(B)=1 THEN 840
- 790 IF N$(B)<>"ME" THEN 820
- 800 PRINT "YOUR TURN"
- 810 GOTO 880
- 820 PRINT N$(B3);"'S TURN"
- 830 GOTO 880
- 840 PRINT "MY TURN";
- 850 IF W7=1 THEN 870
- 860 PRINT "(PLAYER";B;")";
- 870 PRINT
- 880 IF T(B)>0 THEN 900
- 890 GOSUB 9080
- 900 IF Q(B)=1 THEN 3780
- 910 IF E(B)=0 THEN 940
- 920 B9=B3
- 930 GOSUB 4830
- 940 IF T(B)> 100 THEN 960
- 950 GOSUB 5770
- 960 IF N(B)>0 THEN 980
- 970 IF X(B)=0 THEN 1000
- 980 GOSUB 6290
- 990 GOTO 1000
- 1000 B2=INT(RND(1)*6)+1
- 1010 B1=INT(RND(1)*6)+1
- 1020 PRINT "THE DICE ARE ON";B1;" AND ";B2
- 1030 IF B1=B2 THEN 1070
- 1040 IF J(B)=1 THEN 1210
- 1050 G(B)=0
- 1060 GOTO 1570
- 1070 G(B)= G(B)+1
- 1080 REM G(B) IS NUMBER OF DOUBLES
- 1090 IF G(B)>=3 THEN 1160
- 1100 IF J(B)=1 THEN 1130
- 1110 REM J(B)= 1IF IN JAIL, =0 IF OUT OF JAIL
- 1120 GOTO 1570
- 1130 J(B)=0
- 1140 PRINT "OUT OF JAIL "
- 1150 GOTO 2820
- 1160 J(B)=1
- 1170 PRINT "3 DOUBLES . IN JAIL"
- 1180 P(B)=10
- 1190 GOTO 2830
- 1200 G(B)=0
- 1210 IF F(B)>0 THEN 1230
- 1220 GOTO 1350
- 1230 PRINT" IN JAIL WILL ";O$;" USE ";I$;" JAILCARD";
- 1240 IF A(B)=0 THEN 1270
- 1250 PRINT "?* YES *"
- 1260 GOTO 1320
- 1270 INPUT X$
- 1280 IF LEFT$(X$,1)="N" THEN 1350
- 1290 IF LEFT$(X$,1)="Y" THEN 1320
- 1300 PRINT "YES OR NO";
- 1310 GOTO 1270
- 1320 F(B)=F(B)-1
- 1330 D(B)=0
- 1340 GOTO 1550
- 1350 IF D(B)<3 THEN 1380
- 1360 PRINT "THIRD TIME IN JAIL.";O$;" MUST PAY $50."
- 1370 GOTO 1540
- 1380 PRINT"IN JAIL. WILL ";O$;" PAY $50";
- 1390 IF A(B)=0 THEN 1470
- 1400 D(B)=D(B)+1
- 1410 IF D(B)=3 THEN 1450
- 1420 IF T(B)>200 THEN 1450
- 1430 PRINT"? *NO*"
- 1440 GOTO 2830
- 1450 PRINT"? *YES*"
- 1460 GOTO 1540
- 1470 P(B)=P(B)+1
- 1480 INPUT A$
- 1490 P(B)=10
- 1500 IF LEFT$(A$,1)="Y" THEN 1540
- 1510 IF LEFT$(A$,1)="N" THEN 2830
- 1520 PRINT "TYPE 'YES' OR 'NO'";
- 1530 GOTO 1350
- 1540 LET T(B)= T(B)-50
- 1550 J(B)=0
- 1560 D(B)=0
- 1570 P(B)= P(B)+B1+B2
- 1580 R5=0
- 1590 U=0
- 1600 P=P(B)
- 1610 IF P(B)>40 THEN 1630
- 1620 GOTO 1670
- 1630 LET P(B)= P(B)- 40
- 1640 P=P(B)
- 1650 T(B)= T(B)+200
- 1660 PRINT "PASSED GO!! COLLECTED $200 "
- 1670 IF S(P(B))>10 THEN 1700
- 1680 GOTO 2350
- 1690 P=P(B3)
- 1700 IF V(P(B))>B THEN 2100
- 1710 REM V(--) IS THE OWNER OF THE PROPERTY
- 1720 IF V(P(B))<B THEN 1740
- 1730 GOTO 1760
- 1740 IF V(P(B))>0 THEN 2100
- 1750 GOTO 1820
- 1760 Y9=P(B)
- 1770 IF A(B)=0 THEN 1800
- 1780 PRINT "I AM ON ";P$(P);" WHICH I OWN."
- 1790 GOTO 2820
- 1800 PRINT "YOU ARE ON ";P$(Y9); " WHICH YOU OWN "
- 1810 GOTO 2820
- 1820 LET P=P(B3)
- 1830 IF A(B)=0 THEN 1860
- 1840 PRINT P$(P);" IS AVAILABLE AT PRICE $";C(P);" WILL I BUY IT";
- 1850 GOTO 1880
- 1860 PRINT "WILL YOU BUY ";P$(P);" FOR $";C(P);
- 1870 IF A(B)=0 THEN 1930
- 1880 IF T(B)<200 +C(P) THEN 1910
- 1890 PRINT "? *YES*"
- 1900 GOTO 1980
- 1910 PRINT "? *NO*"
- 1920 GOTO 2820
- 1930 INPUT A$
- 1940 IF LEFT$(A$,1)="Y" THEN 1980
- 1950 IF LEFT$(A$,1)="N" THEN 2820
- 1960 PRINT"YES OR NO";
- 1970 GOTO 1930
- 1980 LET T(B)= T(B)- C(P(B))
- 1990 IF R5=1 THEN 2010
- 2000 GOTO 2020
- 2010 W(B)=W(B)+1
- 2020 IF U=1 THEN 2040
- 2030 GOTO 2050
- 2040 LET U(B)= U(B)+1
- 2050 V(P(B))= B
- 2060 U8=0
- 2070 GOSUB 4320
- 2080 GOTO 2820
- 2090 REM THIS IS RENT ROUTINE
- 2100 IF R5=0 THEN 2130
- 2110 R(P(B))= 25* W(V(P(B)))
- 2120 GOTO 8380
- 2130 IF U=0 THEN 8380
- 2140 IF U(B)=2 THEN 2170
- 2150 U3=4
- 2160 GOTO 2180
- 2170 U3=10
- 2180 GOTO 8370
- 2190 IF A(W8)=0 THEN 2240
- 2200 PRINT P$(W9); " IS MINE";
- 2210 IF W7=1 THEN 2250
- 2220 PRINT "(PLAYER";W8;")";
- 2230 GOTO 2250
- 2240 PRINT P$(W9);" BELONGS TO "; N$(W8);
- 2250 IF M(P(B))=1 THEN 2300
- 2260 PRINT ", RENT IS $ "; R(P(B))
- 2270 T(B)=T(B)-R(P(B))
- 2280 T(V(P))= T(V(P))+ R(P(B))
- 2290 GOTO 2820
- 2300 PRINT " ,BUT IT IS MORTGAGED"
- 2310 GOTO 2820
- 2320 P=P(B3)
- 2330 T(V(P(B)))= T(V(P(B)))+ R(P(B))
- 2340 GOTO 2820
- 2350 ON S(P(B)) GOTO 2820,2430,2480,2550,2660,2690,2730,2370,2770,2800
- 2360 REM FOR UNIQUE SQUARES IT SENDS THE PROGRAM TO THE RIGHT DIRECTION
- 2370 Y9=P(B)
- 2380 IF A(B)=0 THEN 2410
- 2390 PRINT "I AM ON ";P$(Y9);"."
- 2400 GOTO 2820
- 2410 PRINT "YOU ARE ON ";P$(Y9)
- 2420 GOTO 2820
- 2430 PRINT"COMMUNITY CHEST ";
- 2440 PRINT "--";
- 2450 GOSUB 3810
- 2460 REM GOES TO CHANCE-COMMUNITY CHEST GOSUB
- 2470 GOTO 2500
- 2480 PRINT "CHANCE--";
- 2490 GOSUB 3810
- 2500 IF V0=1 THEN 2520
- 2510 GOTO 2820
- 2520 V0=0
- 2530 R5=1
- 2540 GOTO 1700
- 2550 Z2=0.1*(T(B))
- 2560 IF Z2>0 THEN 2590
- 2570 PRINT O$;" IS ON INCOME TAX, BUT HAS A NEGATIVE AMOUNT OF MONEY"
- 2580 GOTO 2820
- 2590 IF Z2>200 THEN 2630
- 2600 LET T(B)= T(B)-INT(Z2)
- 2610 PRINT "INCOME TAX--$";INT(Z2)
- 2620 GOTO 2820
- 2630 T(B)= T(B)- 200
- 2640 PRINT "INCOME TAX-$200"
- 2650 GOTO 2820
- 2660 T(B)= T(B)-75
- 2670 PRINT "LUXURY TAX $75"
- 2680 GOTO 2820
- 2690 J(B)=1
- 2700 P(B)=10
- 2710 PRINT"GO TO JAIL"
- 2720 GOTO 2820
- 2730 PRINT"FREE PARKING-$";J0;"."
- 2740 T(B)=T(B)+J0
- 2750 J0=200
- 2760 GOTO 2820
- 2770 R5=1
- 2780 GOTO 1700
- 2790 GOTO 2820
- 2800 U=1
- 2810 GOTO 1690
- 2820 IF G(B)>0 THEN 1000
- 2830 PRINT
- 2840 IF A8=-1 THEN 3060
- 2850 IF A8=0 THEN 2910
- 2860 IF A8=5 THEN 2890
- 2870 A8=A8+1
- 2880 GOTO 3760
- 2890 A8=1
- 2900 GOTO 3060
- 2910 PRINT "SUMMARY";
- 2920 INPUT A$
- 2930 IF A$="AUTO" THEN 2950
- 2940 GOTO 2970
- 2950 A8=1
- 2960 GOTO 3760
- 2970 IF A$="ALWAYS" THEN 2990
- 2980 GOTO 3010
- 2990 A8=-1
- 3000 GOTO 3060
- 3010 IF LEFT$(A$,1) = "N" THEN 3760
- 3020 IF LEFT$(A$,1)="Y" THEN 3060
- 3030 PRINT "'YES' OR 'NO' OR 'AUTO'( GIVES A SUMMARY EVERY FIVE TURNS"
- 3040 PRINT "AND DOESN'T ASK YOU ANY MORE"
- 3050 GOTO 2910
- 3060 GOTO 3070
- 3070 FOR J8=1 TO N
- 3080 X=0
- 3090 T0=0
- 3100 IF Q(J8)=1 THEN 3710
- 3110 T$=" "
- 3120 IF A(J8)=1 THEN 3180
- 3130 IF N$(J8)<>"ME" THEN 3160
- 3140 PRINT "YOU HAVE $";T(J8);
- 3150 GOTO 3220
- 3160 PRINT N$(J8);" HAS $";T(J8);
- 3170 GOTO 3220
- 3180 PRINT"I";
- 3190 IF W7=1 THEN 3210
- 3200 PRINT "(PLAYER";J8;")";
- 3210 PRINT" HAVE $";T(J8);
- 3220 FOR J9=1 TO 40
- 3230 IF V(J9)=J8 THEN 3250
- 3240 GOTO 3410
- 3250 IF T$= " " THEN 3270
- 3260 PRINT ","; T$
- 3270 T$= P$(J9)
- 3280 X=X+C(J9)+B(J9)*INT((S(J9)-10)/2+0.5)*50 -M(J9)* 0.5*C(J9)
- 3290 IF B(T)=0 THEN 3370
- 3300 IF B(T)>1 THEN 3330
- 3310 PRINT "(WITH A HOUSE)";
- 3320 GOTO 3370
- 3330 IF B(T)<5 THEN 3360
- 3340 PRINT "(WITH A HOTEL)";
- 3350 GOTO 3370
- 3360 PRINT "(WITH";B(T);"HOUSES)";
- 3370 IF M(T)=0 THEN 3390
- 3380 PRINT "(MORTGAGED)";
- 3390 T=J9
- 3400 IF T0=1 THEN 3520
- 3410 NEXT J9
- 3420 IF F(J8)>0 THEN 3480
- 3430 IF T$<>" " THEN 3460
- 3440 PRINT "."
- 3450 GOTO 3670
- 3460 PRINT ", AND ";T$;
- 3470 GOTO 3500
- 3480 IF T$=" " THEN 3530
- 3490 PRINT",";T$;
- 3500 T0=1
- 3510 GOTO 3290
- 3520 T0=0
- 3530 IF F(J8)=0 THEN 3610
- 3540 IF F(J8)=1 THEN 3580
- 3550 PRINT ",AND ";F(J8);"JAILCARDS.";
- 3560 X=X+F(J8)*50
- 3570 GOTO 3670
- 3580 PRINT ",AND A JAILCARD.";
- 3590 X=X+50
- 3600 GOTO 3670
- 3610 IF T$=" " THEN 3670
- 3620 K(0)=LEN(T$): FOR XE=1 TO K(0):K(XE)=ASC(MID$(T$,XE,1)):NEXT XE
- 3630 IF K(K(0))=46 THEN 3660
- 3640 PRINT ".";
- 3650 GOTO 3670
- 3660 GOTO 3670
- 3670 PRINT
- 3680 IF X=0 THEN 3700
- 3690 PRINT " TOTAL ASSETS:$";T(J8)+X;"."
- 3700 PRINT
- 3710 NEXT J8
- 3720 PRINT" ";
- 3730 PRINT "$";J0;" ON THE FREE PARKING JACKPOT."
- 3740 PRINT
- 3750 PRINT
- 3760 IF I0=0 THEN 3780
- 3770 GOTO 650
- 3780 PRINT
- 3790 NEXT B3
- 3800 GOTO 580
- 3810 J5=INT(RND(1)*7)+1
- 3820 ON J5 GOTO 3830,3870,3930,3990,4050,4100,4130
- 3830 PRINT "GOTO JAIL!!!"
- 3840 J(B)=1
- 3850 P(B)=10
- 3860 GOTO 4150
- 3870 PRINT "COLLECT $50 FROM EVERYONE"
- 3880 FOR Y3=1 TO N
- 3890 LET T(Y3)= T(Y3)-50
- 3900 NEXT Y3
- 3910 T(B)=T(B)+N*50
- 3920 GOTO 4150
- 3930 PRINT "GO TO READING"
- 3940 LET P(B)=5
- 3950 LET P=5
- 3960 V0=1
- 3970 REM V0 TELLS THE PROGRAM TO GO TO READING
- 3980 RETURN
- 3990 PRINT "PAY ALL $50"
- 4000 FOR Y4=1 TO N
- 4010 T(Y4)= T(Y4)+50
- 4020 NEXT Y4
- 4030 T(B)=T(B)-N*50
- 4040 GOTO 4150
- 4050 Y2=INT(RND(1)*4)+1
- 4060 PRINT "PAY $";Y2*50
- 4070 T(B)=T(B)-Y2*50
- 4080 J0=J0+Y2*50
- 4090 GOTO 4150
- 4100 PRINT "GO DIRECTLY TO GO"
- 4110 P(B)=40
- 4120 GOTO 4150
- 4130 PRINT "TICKET OUT OF JAIL"
- 4140 F(B)=F(B)+1
- 4150 RETURN
- 4160 DATA MEDITERRANEAN,11,2,60,CC,2,BALTIC,11,4,60,IT,4
- 4170 DATA READING,9,25,200,ORIENTAL,12,6,100,CH,3
- 4180 DATA VERMONT,12,6,100,CONN.,12,8,120,JAIL,8
- 4190 DATA ST. CHAS.,13,10,140,ELECTRIC WORKS,10,1,150,STATES
- 4200 DATA 13,10,140,VIRGINIA,13,12,160,PENNS.RR.,9,25,200
- 4210 DATA ST.JAMES,14,14,180,CC,2,TENNESSEE,14,14,180
- 4220 DATA NEW YORK,14,16,200,FP,7,KENTUCKY,15,18,200
- 4230 DATA CH,3,INDIANA,15,18,220,ILLINOIS,15,20,240
- 4240 DATA B&O RR,9,25,200
- 4250 DATA ATLANTIC,16,22,260,VENTNOR
- 4260 DATA 16,22,260,WATER WORKS,10,1,150,M. GARDENS
- 4270 DATA 16,24,280,GOJAIL,6,PACIFIC,17,26,300,N.CAROLINA
- 4280 DATA 17,26,300,CC,2,PENNS. AVE.,17,28,320
- 4290 DATA SHORTLINE,9,25,200,CHANCE,3,PARKPLACE,18
- 4300 DATA 35,350,LT,5,BOARDWALK,18,50,400,GO,8
- 4310 DATA GO,8
- 4320 Z=0
- 4330 Z(3)=0
- 4340 Z(2)=0
- 4350 Z(1)=0
- 4360 IF U8=0 THEN 4400
- 4370 B9=E9
- 4380 P=E8
- 4390 GOTO 4420
- 4400 B9=B3
- 4410 P=P(B9)
- 4420 IF S(P)<11 THEN 4550
- 4430 IF P>4 THEN 4460
- 4440 LET I7=0
- 4450 GOTO 4470
- 4460 I7= P-4
- 4470 IF P>35 THEN 4500
- 4480 Q1= P+4
- 4490 GOTO 4510
- 4500 Q1=40
- 4510 FOR W1= I7 TO Q1
- 4520 IF S(W1) = S(P) THEN 4540
- 4530 GOTO 4580
- 4540 IF V(W1)= B9 THEN 4560
- 4550 RETURN
- 4560 Z=Z+1
- 4570 Z(Z)=W1
- 4580 NEXT W1
- 4590 E(B9)= E(B9)+1
- 4600 IF A(B9)=0 THEN 4630
- 4610 PRINT "I HAVE A MONOPOLY AND THE RENTS ARE DOUBLED"
- 4620 GOTO 4640
- 4630 PRINT "YOU NOW HAVE MONOPOLY. THE RENTS ARE DOUBLED"
- 4640 FOR Z2=1 TO 3
- 4650 R(Z(Z2))= 2*R(Z(Z2))
- 4660 O(Z(Z2))=1
- 4670 NEXT Z2
- 4680 IF S(Z(1))<11 THEN 4700
- 4690 GOTO 4710
- 4700 RETURN
- 4710 GOSUB 4830
- 4720 U8=0
- 4730 RETURN
- 4740 FOR I1=1 TO 40
- 4750 IF S(I1)= S(B) THEN 4770
- 4760 GOTO 4810
- 4770 IF V(I1)= V9 THEN 4790
- 4780 RETURN
- 4790 Z=Z+1
- 4800 Z(Z)=I1
- 4810 NEXT I1
- 4820 GOTO 4630
- 4830 PRINT" DO ";O$;" WANT HOUSES NOW";
- 4840 IF A(B9)=0 THEN 4880
- 4850 IF T(B9)>500 THEN 4940
- 4860 PRINT "? *NO*"
- 4870 RETURN
- 4880 INPUT Z$
- 4890 IF LEFT$(Z$,1)="N" THEN 4930
- 4900 IF LEFT$(Z$,1)="Y" THEN 4960
- 4910 PRINT "YES OR NO";
- 4920 GOTO 4880
- 4930 RETURN
- 4940 I3=1
- 4950 GOTO 4980
- 4960 PRINT "LOT, #OF HOUSES";
- 4970 IF A(B)=0 THEN 5180
- 4980 FOR I2= 1 TO 40
- 4990 IF V(I2)<>B9 THEN 5050
- 5000 IF O(I2)=0 THEN 5050
- 5010 IF B(I2)>4 THEN 5050
- 5020 GOTO 5110
- 5030 H=I2
- 5040 GOTO 5310
- 5050 NEXT I2
- 5060 GOTO 5090
- 5070 IF I3> 5 THEN 5090
- 5080 GOTO 4980
- 5090 PRINT "?*NO*"
- 5100 RETURN
- 5110 IF T(B)>1700 THEN 5150
- 5120 IF B(I2)>5-INT(T(B)/350) THEN 5150
- 5130 H4=INT (T(B)/350)
- 5140 GOTO 5160
- 5150 H4= 5-B(I2)
- 5160 PRINT "?* YES ";H4;" ON ";P$(I2);"*"
- 5170 GOTO 5320
- 5180 INPUT H$,H5
- 5190 IF LEFT$(H$,1)="N" THEN 4930
- 5200 IF H$="WHAT" THEN 9440
- 5210 IF H5>0 THEN 5250
- 5220 PRINT "A POSITIVE NUMBER PLEASE!"
- 5230 INPUT H5
- 5240 GOTO 5210
- 5250 FOR H=1 TO 40
- 5260 IF P$(H)= H$ THEN 5310
- 5270 NEXT H
- 5280 PRINT "WHAT LOT";
- 5290 INPUT H$
- 5300 GOTO 5190
- 5310 IF A(B)=0 THEN 5370
- 5320 H5=H4
- 5330 H=I2
- 5340 GOTO 5370
- 5350 PRINT "YOU DON'T OWN THAT"
- 5360 GOTO 4830
- 5370 H7=H5+B(H)
- 5380 GOSUB 5400
- 5390 GOTO 5650
- 5400 R(H)=L(H)
- 5410 IF H7<6 THEN 5450
- 5420 PRINT " YOU WILL HAVE TO HAVE 5 HOUSES (ONE HOTEL)"
- 5430 H5=H7-B(H)
- 5440 H7=5
- 5450 IF H7>0 THEN 5480
- 5460 PRINT "YOU CAN'T HAVE LESS THAN 0 HOUSES."
- 5470 GOTO 5630
- 5480 B(H)=0
- 5490 FOR H6= 1 TO H7
- 5500 B(H)=H6
- 5510 J=H
- 5520 IF B(H)=0 THEN 4930
- 5530 ON B(H) GOTO 5540,5560,5580,5600,5600
- 5540 R(J)= R(J)*2.5
- 5550 GOTO 5610
- 5560 R(J)=R(J)*3
- 5570 GOTO 5610
- 5580 R(J)= R(J)*2.3
- 5590 GOTO 5610
- 5600 R(J)=R(J)+185
- 5610 R(J)= 10* INT(R(J)/10 +0.5)
- 5620 NEXT H6
- 5630 PRINT "THE RENT IS NOW $";R(J);"."
- 5640 RETURN
- 5650 C=INT((S(J)-10)/2+0.5)*50
- 5660 IF H5=1 THEN 5690
- 5670 PRINT "THOSE WERE $";C;"EACH, MAKING $";H5*C;"."
- 5680 GOTO 5700
- 5690 PRINT "THAT WAS $";C;"."
- 5700 T(B9)= T(B9)- H5*C
- 5710 X(B9)=X(B9)+H5
- 5720 RETURN
- 5730 PRINT "ANOTHER";
- 5740 GOTO 4840
- 5750 RETURN
- 5760 GOTO 4500
- 5770 PRINT "WHAT DO ";O$;" WANT TO MORTGAGE";
- 5780 I3=1
- 5790 IF A(B)=0 THEN 5970
- 5800 IF T(B)>150 THEN 5920
- 5810 FOR I4= 1 TO 40
- 5820 IF V(I4)=B THEN 5840
- 5830 GOTO 5900
- 5840 IF O(I4)= I3 THEN 5900
- 5850 IF M(I4)=1 THEN 5900
- 5860 IF B(I4)<>0 THEN 5900
- 5870 PRINT "? *";P$(I4);"*"
- 5880 Z5=I4
- 5890 GOTO 6060
- 5900 NEXT I4
- 5910 IF I3=1 THEN 5950
- 5920 PRINT "? *NOTHING*"
- 5930 RETURN
- 5940 GOTO 6170
- 5950 I3=0
- 5960 GOTO 5810
- 5970 INPUT Z$
- 5980 IF Z$="WHAT" THEN 9470
- 5990 IF LEFT$(Z$,3)<>"NOT" THEN 6010
- 6000 RETURN
- 6010 FOR Z5 = 1 TO 40
- 6020 IF P$(Z5)=Z$ THEN 6060
- 6030 NEXT Z5
- 6040 PRINT "WHAT";
- 6050 GOTO 5970
- 6060 IF B(Z5)>0 THEN 6180
- 6070 FOR X=1 TO 40
- 6080 IF S(X) <> S(Z5) THEN 6120
- 6090 IF B(X)=0 THEN 6120
- 6100 PRINT "THERE ARE HOUSES ON OTHER LOTS OF MONPOLY. YOU MUST SELL THEM."
- 6110 GOTO 5770
- 6120 NEXT X
- 6130 GOTO 6210
- 6140 M(Z5)=1
- 6150 N(B)= N(B)+1
- 6160 T(B)= T(B)+0.5*C(Z5)
- 6170 GOTO 5770
- 6180 PRINT "THERE ARE HOUSES ON IT"
- 6190 GOTO 5770
- 6200 RETURN
- 6210 IF V(Z5)>B3 THEN 6260
- 6220 IF V(Z5)<B3 THEN 6260
- 6230 IF M(Z5)=0 THEN 6250
- 6240 PRINT"IT ALREADY IS"
- 6250 GOTO 6140
- 6260 PRINT" YOU DON'T OWN THAT"
- 6270 GOTO 5780
- 6280 RETURN
- 6290 PRINT "UNMORTGAGE WHAT";
- 6300 IF A(B)=0 THEN 6420
- 6310 IF T(B)<150 THEN 6400
- 6320 FOR E0= 1 TO 40
- 6330 IF V(E0)= B THEN 6350
- 6340 GOTO 6390
- 6350 IF M(E0)=0 THEN 6390
- 6360 PRINT "?*"; P$(E0);"*"
- 6370 E=E0
- 6380 GOTO 6540
- 6390 NEXT E0
- 6400 PRINT "? *NOTHING*"
- 6410 GOTO 6650
- 6420 INPUT Z$
- 6430 IF Z$<>"WHAT" THEN 6470
- 6440 PRINT "TYPE 'NOTHING', A PROPERTY NAME, OR 'HOUSES' IF"
- 6450 PRINT "YOU WANT TO SELL THEM."
- 6460 GOTO 6420
- 6470 IF LEFT$(Z$,3)="NOT" THEN 6650
- 6480 IF Z$="HOUSES" THEN 6660
- 6490 FOR E=1 TO 40
- 6500 IF P$(E)=Z$ THEN 6540
- 6510 NEXT E
- 6520 PRINT "WHAT";
- 6530 GOTO 6420
- 6540 IF M(E)=1 THEN 6570
- 6550 PRINT "IT ISN'T MORTGAGED"
- 6560 GOTO 6290
- 6570 IF V(E)=B THEN 6600
- 6580 PRINT "YOU DON'T OWN IT"
- 6590 GOTO 6290
- 6600 M(E)=0
- 6610 N(B)= N(B)-1
- 6620 T(B)=T(B)-INT(0.6*C(E))
- 6630 PRINT "WITH INTEREST THAT WAS$";INT(0.6*C(E))
- 6640 IF N(B)>0 THEN 6290
- 6650 RETURN
- 6660 PRINT"LOT,# OF HOUSES";
- 6670 INPUT Z$,E2
- 6680 IF E2>0 THEN 6710
- 6690 PRINT "INPUT A POSITIVE NUMBER"
- 6700 GOTO 6660
- 6710 IF Z$="NO" THEN 6170
- 6720 GOTO 6760
- 6730 PRINT "TYPE IN THE NAME OF THE LOT THEN THE # OF HOUSES YOU ARE"
- 6740 PRINT"SELLING. TO SELL NONE TYPE 'NO'"
- 6750 GOTO 6660
- 6760 FOR E3=1 TO 40
- 6770 IF P$(E3)=Z$ THEN 6820
- 6780 NEXT E3
- 6790 PRINT "WHAT LOT";
- 6800 INPUT Z$
- 6810 GOTO 6710
- 6820 B(E3)= B(E3)-E2
- 6830 X(B)=X(B)-E2
- 6840 IF B(E3)<0 THEN 6930
- 6850 H=E3
- 6860 H7=B(H)
- 6870 GOSUB 5400
- 6880 E4=INT((S(E3)-10)/2+0.5)*25
- 6890 E4=E4*E2
- 6900 PRINT" YOU GET$";E4
- 6910 T(B)=T(B)+E4
- 6920 GOTO 6290
- 6930 PRINT "YOU DON'T HAVE THAT MANY"
- 6940 B(E3)=B(E3)+E2
- 6950 GOTO 6660
- 6960 GOTO 6290
- 6970 IF A7=1 THEN 7110
- 6980 IF E6=0 THEN 7020
- 6990 E6=E6+1
- 7000 IF E6<3 THEN 7150
- 7010 E6=1
- 7020 PRINT "CHANGES";
- 7030 E6=0
- 7040 INPUT Z$
- 7050 IF Z$<>"WHAT" THEN 7080
- 7060 PRINT "'YES', 'NO','NEVER',OR 'DELAY'( WILL ASK AGAIN IN THREE TURNS";
- 7070 GOTO 7040
- 7080 IF Z$= "NEVER" THEN 7100
- 7090 GOTO 7120
- 7100 A7=1
- 7110 RETURN
- 7120 IF Z$="YES" THEN 7230
- 7130 IF Z$<>"DELAY" THEN 7170
- 7140 E6=1
- 7150 PRINT
- 7160 RETURN
- 7170 IF Z$="NO" THEN 7150
- 7180 PRINT "TYPE 'YES', OR 'NO' IF YOU WANT TO MAKE CHANGES OR NOT"
- 7190 PRINT "OR 'DELAY' TO HAVE IT ASK YOU LATER"
- 7200 GOTO 7020
- 7210 RETURN
- 7220 IF T(B9)> 300 THEN 4940
- 7230 GOTO 7270
- 7240 REM THIS PART WILL TRANSFERR OWNERSHIP OF A PROPERTY
- 7250 REM TO SOMEONE ELSE AND TRANSFER SOME MONEY TO
- 7260 REM TO CORRRESPOND
- 7270 PRINT "('WHAT,A,0' FOR INST.)";
- 7280 INPUT Z$,A$,A
- 7290 IF Z$="NEW PLAYER" THEN 10190
- 7300 IF A$<>"YOU" THEN 7320
- 7310 A$="COMPUTER"
- 7320 IF Z$="NEW PLAYER" THEN 10190
- 7330 IF Z$="WHAT" THEN 9490
- 7340 IF Z$= "NO" THEN 8300
- 7350 IF Z$="QUIT" THEN 7650
- 7360 IF Z$="JAIL CARD" THEN 7650
- 7370 IF Z$="JAILCARD" THEN 7650
- 7380 IF A$<>"BANK" THEN 7420
- 7390 GOTO 7650
- 7400 PRINT" THAT'S ILLEGAL!"
- 7410 GOTO 7270
- 7420 FOR E8=1 TO 40
- 7430 IF P$(E8)= Z$ THEN 7520
- 7440 NEXT E8
- 7450 PRINT "WHAT LOT";
- 7460 INPUT Z$
- 7470 IF Z$ <> "WHAT" THEN 7500
- 7480 PRINT"TYPE THE PROPERTY NAME OR 'NO'"
- 7490 GOTO 7460
- 7500 IF Z$="NO" THEN 7020
- 7510 GOTO 7420
- 7520 IF S(E8)<9 THEN 8310
- 7530 T8=0
- 7540 IF V(E8)=0 THEN 8330
- 7550 IF B(E8)>0 THEN 7630
- 7560 FOR I2= 1 TO 40
- 7570 IF S(I2)<>S(E8) THEN 7610
- 7580 IF B(I2)=0 THEN 7610
- 7590 PRINT "THERE ARE HOUSES ON OTHER LOTS OF MONOPOLY.YOU MUST SELL THEM."
- 7600 GOTO 7020
- 7610 NEXT I2
- 7620 GOTO 7650
- 7630 PRINT "THERE ARE HOUSES ON IT"
- 7640 GOTO 7270
- 7650 T8=0
- 7660 FOR E9= 1 TO N
- 7670 IF N$(E9)=A$ THEN 7690
- 7680 GOTO 7700
- 7690 T8=T8+1
- 7700 NEXT E9
- 7710 ON T8+1 GOTO 7830,7920,7720,7720,7720,7720,7720,7720,7720,7720
- 7720 PRINT "WHICH PLAYER NO.('-1' FOR INSTRUCTIONS)";
- 7730 INPUT E9
- 7740 IF E9>0 THEN 7780
- 7750 PRINT "TYPE THE PLAYER NO. OF THE PIECE. BECAUSE I"
- 7760 PRINT "PLAY MORE THAN ONE PLAYER, I MUST KNOW WHICH";
- 7770 GOTO 7730
- 7780 IF E9>N THEN 7720
- 7790 IF A(E9)=1 THEN 7820
- 7800 PRINT"I AM NOT ";N$(E9)
- 7810 GOTO 7720
- 7820 GOTO 7920
- 7830 PRINT "WHO";
- 7840 INPUT A$
- 7850 IF A$="NO" THEN 8350
- 7860 IF A$<>"WHAT" THEN 7880
- 7870 PRINT "TYPE NEW OWNER'S NAME OR 'NO'";
- 7880 GOTO 7650
- 7890 REM THIS IS FOR JAILCARDS
- 7900 GOSUB 9680
- 7910 GOTO 7020
- 7920 GOTO 7930
- 7930 FOR E9=1 TO N
- 7940 IF N$(E9)<>A$ THEN 7960
- 7950 GOTO 7970
- 7960 NEXT E9
- 7970 B=E9
- 7980 IF Z$="JAILCARD" THEN 7890
- 7990 IF Z$<>"QUIT" THEN 8030
- 8000 B=E9
- 8010 GOSUB 9310
- 8020 GOTO 7020
- 8030 U5=V(E8)
- 8040 IF A$="BANK" THEN 8150
- 8050 IF A(V(E8))=1 THEN 8480
- 8060 IF A(E9)=1 THEN 8420
- 8070 T(V(E8))= T(V(E8))+A
- 8080 IF S(E8)<>9 THEN 8110
- 8090 W(V(E8))=W(V(E8))-1
- 8100 W(E9)=W(E9)+1
- 8110 IF S(E8)<>10 THEN 8140
- 8120 U(V(E8))=U(V(E8))-1
- 8130 U(E9)=U(E9)+1
- 8140 LET V(E8)= E9
- 8150 T(E9)= T(E9)-A
- 8160 IF A$="BANK" THEN 7020
- 8170 IF O(E8)=1 THEN 8190
- 8180 GOTO 8270
- 8190 FOR O9= 1 TO 40
- 8200 IF S(O9)=S(E8) THEN 8220
- 8210 GOTO 8240
- 8220 LET R(O9)= R(O9)/2
- 8230 O(O9)=0
- 8240 NEXT O9
- 8250 PRINT "NO LONGER A MONOPOLY THERE"
- 8260 LET E(U5)= E(U5)-1
- 8270 U8=1
- 8280 P=E8
- 8290 GOSUB 4320
- 8300 GOTO 7020
- 8310 PRINT" YOU FOOL, YOU CANT OWN ";Z$;"!!!!"
- 8320 GOTO 7270
- 8330 PRINT "IT ISN'T OWNED"
- 8340 GOTO 7270
- 8350 GOTO 7020
- 8360 REM THIS BELONGS TO LINES 1049--
- 8370 R(P(B))=INT(RND(1)*6+1)*U3
- 8380 W9=P(B)
- 8390 W8=V(P(B))
- 8400 GOTO 2190
- 8410 W8=V(P(B))
- 8420 IF T(E9)> 200+ C(E8) THEN 8450
- 8430 PRINT "I DONT ACCEPT"
- 8440 GOTO 7230
- 8450 IF A> 150+C(E8) THEN 8430
- 8460 PRINT "I ACCEPT"
- 8470 GOTO 8070
- 8480 IF O(E8)=1 THEN 8580
- 8490 IF A>2*C(E8) THEN 650
- 8500 IF S(O1)<>S(E8) THEN 8520
- 8510 IF V(O1)<>E9 THEN 8560
- 8520 NEXT O1
- 8530 IF T(V(E8))>200 THEN 8580
- 8540 IF A<C(E8)+200 THEN 8580
- 8550 GOTO 8620
- 8560 IF T(V(E8))<200 THEN 8600
- 8570 GOTO 8580
- 8580 PRINT "I WON'T SELL"
- 8590 GOTO 7230
- 8600 IF A> 1.5* C(E8) THEN 8620
- 8610 GOTO 8580
- 8620 PRINT "IT IS A DEAL"
- 8630 GOTO 8070
- 8640 PRINT " THIS PROGRAM WILL HANDLE UP TO TEN PLAYERS"
- 8650 PRINT "OR PIECES. IT WILL DO ALL ROUTINE JOBS SUCH AS"
- 8660 PRINT"ROLLING THE DICE,MOVING PIECES, AND INFORMING THE"
- 8670 PRINT "PLAYERS OF ALL OPTIONS. IT WILL ACTUALLY PLAY THE"
- 8680 PRINT"GAME MAKING THE DECISIONS OF ANY NUMBER OF PLAYERS."
- 8690 PRINT"WANT THE COMPUTER TO DO THIS TYPE 'YOU' WHEN IT ASKS"
- 8700 PRINT"FOR THE NAME."
- 8710 PRINT
- 8720 PRINT"THIS PROGRAM IS FAIRLY SELF-EXPLANATORY, HOWEVER THE FOLLOWING"
- 8730 PRINT "THINGS MUST BE KEPT IN MIND:"
- 8740 PRINT
- 8750 PRINT" 1. IF A QUESTION IS NOT UNDERSTOOD,TYPING 'WHAT' WILL"
- 8760 PRINT "USUALLY GIVE INSTRUCTIONS. HOWEVER SOME QUESTIONS WILL"
- 8770 PRINT "ASK FOR MORE THAN ONE THING AND THIS NUMBER OF THINGS MUST"
- 8780 PRINT "BE TYPED SEPERATED BY COMMAS. ALSO CARE MUST BE "
- 8790 PRINT "TAKEN THAT ALL INPUTS ARE EITHER NUMERIC OR ALPHABETIC"
- 8800 PRINT "AS ASKED FOR. EXAMPLE:"
- 8810 PRINT " LOT, # OF HOUSES? WHAT,0"
- 8820 PRINT "WILL GIVE INSTRUCTIONS."
- 8830 PRINT :PRINT
- 8840 INPUT "TO CONTINUE HIT <CR>";YN$
- 8850 PRINT CHR$(27);CHR$(69)
- 8860 PRINT " 2. THE COMPUTER WILL OFTEN ASK IF YOU WANT CHANGES"
- 8870 PRINT "OR A SUMMARY. THE CHANGES ROUTINE WILL BE DESCRIBED"
- 8880 PRINT "BELOW, BUT IF YOU DON'T WANT TO BE BOTHERED WITH THAT"
- 8890 PRINT "EVERYTIME, TYPE 'NEVER' TO HAVE IT STOP ASKING"
- 8900 PRINT "COMPLETELY, OR 'DELAY' TO HAVE IT ASK IN THREE"
- 8910 PRINT "TURNS. FOR SUMMARY TYPE 'AUTO' AND IT WILL "
- 8920 PRINT "GIVE A SUMMARY EVERY 5 TURNS, WITHOUT ASKING YOU AGAIN"
- 8930 PRINT" 3. TO SELL PROPERTIES OR ADD AND DROP PLAYERS USE THE "
- 8940 PRINT "CHANGES ROUTINE. TYPE 'YES' WHEN IT ASKS 'CHANGES?'"
- 8950 PRINT "TYPE 'YES' THEN TYPE 'WHAT,A,0' FOR COMPLETE INSTRUCTIONS"
- 8960 PRINT " 4. FIVE HOUSES ARE EQUIVALENT TO ONE HOTEL."
- 8970 PRINT " 5. IF YOU TYPE 'YOU' FOR ALL THE NAMES"
- 8980 PRINT "THE COMPUTER WILL PLAY ITSELF WITHOUT"
- 8990 PRINT "ASKING YOU FOR ANYTHING. TYPING 'CNTRL O'"
- 9000 PRINT "WILL MAKE THE GAME CONTINUE WITHOUT TYPING ANYTHING"
- 9010 PRINT "OUT, AND A 'CNTRL C' THEN 'CONTINUE' WILL START"
- 9020 PRINT "PRINTING THE GAME OUT AFTER IT IS FAR ALONG.
- 9030 PRINT " 6. TO SELL HOUSES, WAIT UNTIL THE COMPUTER ASKS"
- 9040 PRINT "UNMORTGAGE WHAT? AND TYPE 'HOUSES' THEN ANSWER"
- 9050 PRINT "ANSWER FURTHAR QUESTIONS."
- 9060 RETURN
- 9070 PRINT
- 9080 IF N7=1 THEN 9270
- 9090 IF A(B)=0 THEN 9170
- 9100 FOR I2= 1 TO N
- 9110 IF Q(I2)=1 THEN 9130
- 9120 IF A(I2)=0 THEN 9150
- 9130 NEXT I2
- 9140 GOTO 9270
- 9150 PRINT "I AM $";ABS(T(B));"IN THE RED. SHOULD I QUIT";
- 9160 GOTO 9180
- 9170 PRINT "YOU ARE $";ABS(T(B));"IN THE HOLE. WILL YOU QUIT";
- 9180 INPUT Z$
- 9190 IF LEFT$(Z$,1)="Y" THEN 9310
- 9200 IF LEFT$(Z$,1)="N" THEN 9260
- 9210 IF LEFT$(Z$,1)="L" THEN 9270
- 9220 PRINT "TYPE 'YES' TO QUIT OR 'NO' TO KEEP GOING"
- 9230 PRINT "AND PAYING 5% INTEREST ON THE NEGATIVE AMMOUNT"
- 9240 PRINT "OR 'LATER' TO NOT QUIT NOW BUT KEEP THE COMPUTER ASKING"
- 9250 GOTO 9180
- 9260 N7=1
- 9270 I1=INT(ABS(0.05*T(B)+ 0.5))
- 9280 PRINT "5% INTEREST IS $";I1
- 9290 T(B)= T(B) - I1
- 9300 RETURN
- 9310 Q(B)=1
- 9320 T(B)=0
- 9330 FOR I2=1 TO 40
- 9340 IF V(I2)<>B THEN 9400
- 9350 V(I2)=0
- 9360 M(I2)=0
- 9370 B(I2)=0
- 9380 R(I2)=L(I2)
- 9390 O(I2)=0
- 9400 NEXT I2
- 9410 N$(B)=" "
- 9420 RETURN
- 9430 GOTO 6420
- 9440 PRINT "TYPE PROPERTY NAME THEN NUMBER OF HOUSES OR"
- 9450 PRINT "'NO,0' TO DO NOTHING"
- 9460 GOTO 5160
- 9470 PRINT "TYPE A PROPERTY NAME OR 'NOTHING' ";
- 9480 GOTO 5970
- 9490 PRINT " THIS ROUTINE CAN DO SEVERAL THINGS:"
- 9500 PRINT " 1. TO SELL PROPERTY FROM ONE PERSON TO ANOTHER"
- 9510 PRINT "TYPE THE PROPERTY NAME,THE NEW OWNER'S NAME, THEN"
- 9520 PRINT "THE AMOUNT IT IS BEING SOLD FOR."
- 9530 PRINT " 2. TO SELL A JAILCARD, TYPE 'JAILCARD',THE NEW OWNERS"
- 9540 PRINT "NAME, THEN THE AMOUNT IT IS BEING SOLD FOR."
- 9550 PRINT "IF NEEDED THE COMPUTER WILL ASK WHO IT CAME FROM."
- 9560 PRINT " 3. FOR EITHER OF THE ABOVE,'YOU' CAN BE USED AS THE"
- 9570 PRINT "NEW OWNER'S NAME,OR THE COMPUTERS PROPERTY CAN BE USES"
- 9580 PRINT "THE COMPUTER WILL THEN DECIDE IF IT WILL ACCEPT YOUR OFFER,"
- 9590 PRINT "AND TELL YOU IF IT WILL BUY OR SELL."
- 9600 PRINT " 4. TO ADD A NEW PLAYER TYPE:'NEW PLAYER',HIS NAME,'0'"
- 9610 PRINT " 5. TO DROP A PLAYER TYPE:'QUIT',HIS NAME,'0'"
- 9620 PRINT
- 9630 GOTO 7270
- 9640 B=E9
- 9650 REMARK THIS IS FOR QUITING FORM CHANGE ROUTINE
- 9660 GOSUB 9310
- 9670 GOTO 7020
- 9680 REM THIS IS FOR CHANGING JAILCARDS
- 9690 IF N<>2 THEN 9720
- 9700 T0=3-E9
- 9710 GOTO 9950
- 9720 PRINT "WHO FROM";
- 9730 INPUT Z$
- 9740 IF Z$<>"WHAT" THEN 9780
- 9750 PRINT"TYPE THE PERSON'S NAME FROM WHOM THE CARD"
- 9760 PRINT" CAME.";N$(E9);" HAD IT. WHO HAS IT NOW";
- 9770 GOTO 9730
- 9780 IF Z$<>"YOU" THEN 9900
- 9790 IF W8=1 THEN 9890
- 9800 PRINT "WHICH #";
- 9810 PRINT "('0' FOR INST.)";
- 9820 INPUT O3
- 9830 IF O3>0 THEN 9860
- 9840 PRINT "I AM PLAYING SEVERAL PLAYERS. TYPE NO. OF ONE YOU WANT";
- 9850 GOTO 9820
- 9860 IF O3>N THEN 9840
- 9870 T0=O3
- 9880 GOTO 9950
- 9890 Z$="COMPUTER"
- 9900 FOR T0= 1 TO 40
- 9910 IF N$(T0)= Z$ THEN 9950
- 9920 NEXT T0
- 9930 PRINT "WHO ";
- 9940 GOTO 9730
- 9950 IF A(T0)=0 THEN 10030
- 9960 IF A>45 THEN 9990
- 9970 IF A<30 THEN 10010
- 9980 GOTO 10010
- 9990 PRINT" OK"
- 10000 GOTO 10140
- 10010 PRINT" NO"
- 10020 RETURN
- 10030 IF A(E9)=0 THEN 10080
- 10040 IF A>50 THEN 10010
- 10050 IF F(E9)=1 THEN 10010
- 10060 IF T(E9)<200 THEN 10010
- 10070 GOTO 9990
- 10080 IF F(T0)=1 THEN 10010
- 10090 IF A(T0)=0 THEN 10120
- 10100 IF A> 45 THEN 10010
- 10110 GOTO 10130
- 10120 PRINT "HE DOESN'T HAVE ONE"
- 10130 RETURN
- 10140 F(T0)= F(T0)-1
- 10150 F(E9)=F(E9)+1
- 10160 T(T0)=T(T0)+A
- 10170 T(E9)=T(E9)-A
- 10180 RETURN
- 10190 REM THIS ALLOWS A NEW PLAYER
- 10200 IF A$="YOU" THEN 10280
- 10210 FOR O9= 1 TO N
- 10220 IF N$(O9)=A$ THEN 10250
- 10230 NEXT O9
- 10240 GOTO 10280
- 10250 PRINT "INPUT A NAME NOT ALREADY USED";
- 10260 INPUT A$
- 10270 GOTO 10210
- 10280 FOR O9= 1 TO N
- 10290 IF Q(O9)=1 THEN 10440
- 10300 NEXT O9
- 10310 IF N<10 THEN 10340
- 10320 PRINT "TOO MANY PLAYERS. SOMEONE WILL HAVE TO QUIT."
- 10330 GOTO 7020
- 10340 N=N+1
- 10350 Q(N)=0
- 10360 T(N)=1500
- 10370 IF A$<>"YOU" THEN 10420
- 10380 N$(N)="COMPUTER"
- 10390 W7=W7+1
- 10400 A(N)=1
- 10410 GOTO 7020
- 10420 N$(N)=A$
- 10430 GOTO 7020
- 10440 REM THIS IS FOR NEW PLAYER
- 10450 N$(O9)= A$
- 10460 Q(O9)=0
- 10470 P(O9)=0
- 10480 T(O9)=1500
- 10490 IF N$(9)<>"YOU" THEN 10530
- 10500 N$(O9)="COMPUTER"
- 10510 W7=W7+1
- 10520 A(O9)=1
- 10530 GOTO 7020
- 10540 END
-